package com.edt.ichannel.api.service;

import com.edt.ichannel.api.common.entity.ActionResult;
import com.edt.ichannel.api.entiy.local.OrderCreditCK;

import java.util.List;

public interface OrderCreditCKService {
    /**
     * 根据订单号查询成卡信息
     * @param orderCode
     *              订单号
     * @return 查询结果
     */
    OrderCreditCK selectOrderCreditCkByOrderCode(String orderCode);

    /**
     * 插入成卡信息
     * @param orderCreditCK 成卡信息
     */
    ActionResult insertOrderCredit(OrderCreditCK orderCreditCK);

    List<OrderCreditCK> selectNeedPutOut();

    void moveOrderCreditCkToOrderCredit();

    void saveOrUpdateOrderCreditCk(OrderCreditCK orderCreditCK);

    void moveOrderCreditCkToOrderCreditByOrderCode(String orderCode);

    /**
     * 查询C需要调用接口数据
     * @return 查询结果
     */
    List<OrderCreditCK> selectOrderChannelCNeedPush();

    /**
     * 将推送过得数据状态改为已推送
     * @param id 成卡id
     */
    void updateNeedPushuToOver(String id);

    /**
     * 按月发放结束
     * @param id ck kd 表id
     */
    void overFlowMonthCommission(String id);

    /**
     * 给相应的成卡数据添加佣金金额
     * @param id 成卡id
     * @param commissionMoney 佣金金额
     */
    void addCommissionMoney(String id, Double commissionMoney);

    void appendRemark(String id, String s);


}
